A communications system usually uses channel coding to improve reliability of data transmission and ensure quality of communication. polar code is a new channel coding method proposed by Erdal Arikan in 2007 based on a theory of channel polarization. The polar code is a coding-decoding algorithm that has relatively low complexity and that first theoretically proves that a Shannon capacity can be achieved.
In radio data transmission, rate matching often needs to be performed after data is coded, that is, a coded bit is punctured or repeated to match a bearer capability of a physical channel. If a quantity of input bits is less than a quantity of output bits, Puncturing is used. If the quantity of input bits is greater than the quantity of output bits, repetition is used. Puncturing means that some bits are deleted according to a specific pattern, and removed from a bit sequence. Repetition means that a current bit is inserted once between the current bit and a next bit. On the contrary to the rate matching algorithm, a rate de-matching algorithm restores a deleted bit or deletes a repeated bit. For a Hybrid Automatic Repeat Request (HARQ), the rate matching is used to determine a bit transmitted in each HARQ retransmission.
In the prior art, in the rate matching, when puncturing is required, a traditional random (quasi-random) puncturing technology may be used for the polar code, that is, a puncturing location is randomly selected. A Frame Error Rate (FER) of this puncturing manner in the prior art is relatively high, and HARQ performance is relatively poor.